_o_l_d_l_e_v_e_l Last set priority value (only _ssss_pppp_llll_xxxx has an input argument).
DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
The _ssss_pppp_llll functions block or allow servicing of interrupts on the processor
on which the function is called.
RRRReeeettttuuuurrrrnnnn VVVVaaaalllluuuueeeessss
All _ssss_pppp_llll functions except _ssss_pppp_llll_xxxx return the previous priority level for use
by _ssss_pppp_llll_xxxx.
UUUUSSSSAAAAGGGGEEEE
Hardware devices are assigned to interrupt priority levels depending on
the type of device. Each _ssss_pppp_llll function which blocks interrupts is
associated with some machine dependent interrupt priority level and will
prevent interrupts occurring at or below this priority level from being
serviced on the processor on which the _ssss_pppp_llll function is called.
On a multiprocessor system, interrupts may be serviced by more than one
processor and, therefore, use of a _ssss_pppp_llll function alone is not sufficient
to prevent interrupt code from executing and manipulating driver data
structures during a critical section. Drivers that must prevent
execution of interrupt-level code in order to protect the integrity of
their data should use basic locks for this purpose [see _LLLL_OOOO_CCCC_KKKK______AAAA_LLLL_LLLL_OOOO_CCCC(D3)].
The _ssss_pppp_llll functions include the following:
_ssss_pppp_llll_bbbb_aaaa_ssss_eeee Block no interrupts. Should only be used by base-level code
that knows it is not nested within any section of protected
critical code.
_ssss_pppp_llll_tttt_iiii_mmmm_eeee_oooo_uuuu_tttt Block functions scheduled by _iiii_tttt_iiii_mmmm_eeee_oooo_uuuu_tttt and _dddd_tttt_iiii_mmmm_eeee_oooo_uuuu_tttt.
_ssss_pppp_llll_dddd_iiii_ssss_kkkk Block disk device interrupts.